if(typeof dislikes !== 'object')
	var dislikes = {};

dislikes.getURL = function(file)
{
	return 'chrome://dislikes/content/skin/'+file;
};
	
dislikes.processRequest = function(request, callback, doc)
{
	if(request.action == 'analytics')
	{
		return 'iframe';
	}
	
	dislikesBG.onRequest(request, '', callback, doc);
};
	
dislikes.HTMLParser = function(aHTMLString)
{
	var html = document.implementation.createDocument("http://www.w3.org/1999/xhtml", "html", null),
	body = document.createElementNS("http://www.w3.org/1999/xhtml", "body");
	html.documentElement.appendChild(body);

	body.appendChild(Components.classes["@mozilla.org/feed-unescapehtml;1"]
		.getService(Components.interfaces.nsIScriptableUnescapeHTML)
		.parseFragment(aHTMLString, false, null, body));

	return body;
};
	
dislikes.escapeHTML = function(str)
{
	return str.replace(/[&"<>]/g, function (m) "&" + ({ "=&": "amp", '"': "quot", "<": "lt", ">": "gt" })[m] + ";");
};